// function foo1() {
//   console.log('foo1 开始')
//   return new Promise((resolve) => {
//     resolve('拉勾教育')
//   })
// }
// function foo2() {
//   console.log('foo2 开始')
//   return new Promise((resolve) => {
//     setTimeout(() => { //s2
//       resolve('拉勾教育')
//     }, 0)
//   })
// }
console.log(1)
setTimeout(() => { // s1
  console.log(2)
}, 30)
for (let i = 0; i < 77777777; i++) { } // 当前代码执行需要耗时200ms
console.log(4)

setTimeout(() => { //s3
  console.log(7)
}, 0)
// console.log(8)
// Function 与 Object 谁大
// 二大平行的基类，看你从哪个方向来讨论（对象，函数）
// 函数是一等公民（ 函数可以有多个身份, 传参，变量。。。 但是它最主要的角色是函数 ）

// s1 s3 s2